package com.ctshk.rpc.scenic.req;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Data
public class ScenicProductSaveReq implements Serializable {

    @NotNull
    private String id;

    @ApiModelProperty(value = "开售时间类型(1 立即开售,2 定时开售)")
    private Integer startSaleTimeType;

    @ApiModelProperty(value ="开售时间起始")
    private LocalDateTime startSaleTimeBegin;

    @ApiModelProperty(value = "开售时间结束")
    private LocalDateTime startSaleTimeEnd;

    @ApiModelProperty(value = "预订退改须知")
    private String customerNotice;

    @ApiModelProperty(value = "预订服务费类型")
    private Integer reserveChargeType;

    @ApiModelProperty(value = "预订服务费")
    private BigDecimal reserveCharge;

    @ApiModelProperty(value = "中旅退改费用类型")
    private Integer ctsChargeType;

    @ApiModelProperty(value = "中旅退改服务费")
    private BigDecimal ctsCharge;

    @ApiModelProperty(value = "是否需要填写证件信息")
    private Integer needInfo;

    @ApiModelProperty(value = "1电子票/2纸质票")
    private Integer ticketType;

    @ApiModelProperty(value = "1电邮/2短信/3实体票/4atb/5换票单")
    private String fetchWay;

    @ApiModelProperty(value = "使用方式")
    private Integer usageMode;

    @ApiModelProperty(value = "预订确认(1 立即确认,2 二次确认)")
    private Integer bookConfirm;

    @ApiModelProperty(value = "取消政策(1 限时取消,2 不退不改)")
    private Integer cancelPolicy;


    @ApiModelProperty(value = "修改产品类型")
    private String productType;

}
